<?php
//session_start();

class RegisterController extends BaseController
{

	public function init()
	{
		$this->load_header .= '<script type="text/javascript" src="'.JS_URL.'jquery.maskedinput-1.3.min.js"></script>';
        $this->load_header .= '<script type="text/javascript">jQuery(function($){
   $("#birthdate").mask("99/99/9999",{placeholder:" "});   
});</script>';
	}
	public function preDispatch()
	{		
		parent::preDispatch();
	}
    function indexAction(){
        $request=$this->getRequest();
        $hidden_login = $request->getPost('hidden_login','');
        if ($request->isPost() && $hidden_login==''){
            $post = $request->getPost();
            $post['birthdate'] = str_replace ('/', '-', $post['birthdate']);
            
            $rules = array (
                'first_name'=>'req',
                'last_name'=>'req',                
                'birthdate'=> array ('date'=>'d-m-Y'),
                'email'=> array ('req'=>true, 'email'=>true),
                'confirm_email'=>array ('equalTo'=>$post['email']),
                'password'=>'req',
                'confirm_password'=>array ('equalTo'=>$post['password']),
                'address'=>'req',
                'city_id'=>'req',
                'mobile'=>'req',
                'agree'=>'req'
            );
            $arrAlert=array(
                'first_name'=>'Vui lòng nhập Tên',
                'last_name'=>'Vui lòng nhập Họ',        
                'email'=>'Email không đúng định dạng',       
                'confirm_email' => 'Email không trùng khớp. Vui lòng kiểm tra lại',
                'birthdate'=> 'Ngày sinh không chính xác. Vui lòng kiểm tra lại!',
                'address'=>'Địa chỉ bắt buộc phải nhập',
                'city_id'=>'Bạn chưa chọn thành phố',
                'mobile'=>'Số di động chưa được nhập',               
                'agree'=>'Bạn phải chấp nhận những điều khoản của website',
                'password'=>'Bạn phải nhập mật khẩu',
                'confirm_password'=>'Mật khẩu không trùng khớp. Vui lòng kiểm tra lại',
                'exists'=>'Email đã tồn tại. Vui lòng chọn email khác',
                'captcha_code'=>'Mã bảo mật không chính xác!',
                'success'=>'Đăng ký thành công \n Bạn đã khởi tạo thành công tài khoản sử dụng trên website http://www.mua-ban-xe.com\n Vui lòng kiểm tra email để kích hoạt tài khoản trước khi thực hiện các bước tiếp theo.\n Chân thành cám ơn!'
			);
            
            if (!isset($post['agree']) || $post['agree']==0){
                $post['agree'] = '';
            }
            
            $oValidation = new Defined_Validation($rules);            
            
            $valid = $oValidation->validate($post);
            
            if ($valid===true){
                
                $date = explode ('-', $post['birthdate']);
                $post['birthdate'] = $date[2] . '-' . $date[1] .'-'.$date[0];     
                unset ($post['confirm_password']);
                unset ($post['confirm_email']);
                unset ($post['agree']);
                
                //captcha
                //include_once  'static/captcha/securimage/securimage.php';
                //$securimage = new Securimage();
                $mUser = new User();
                
                //if ($securimage->check($post['captcha_code']) == false) {
                if ( strtoupper ($post['captcha_code']) != $_SESSION['security_code']) {                    
                    $this->view->CALL_SCRIPT = 'alert ("'.$arrAlert['captcha_code'].'");' . "\n";
                }elseif($mUser->getEmailUser($post['email'] )){
                    $this->view->CALL_SCRIPT = 'alert ("'.$arrAlert['exists'].'");' . "\n";
                }else{
                    unset ($post['captcha_code']);
                    $post['email'] = strtolower($post['email']);
                    $this->view->username = $post['email'];
                    $this->view->password = $post['password'];
                    $post['password'] = md5($post['password']);
                    $id=$mUser->insert($post); 
                     if ($id>0) {
                        /* $mEmail=new Mail();
                        $key=md5($post['email'].$post['password']);
                        
                        $this->view->LINK = '<a href="'.DOMAIN.'active/index/key/'.$key.'/user/'.$id.'/" target="_blank">Kích hoạt tài khoản</a>';
                        $title = 'Kích hoạt tài khoản mua-ban-xe.com';
                        $content = $this->view->render('register/mail.phtml');
                        $mEmail->sendEmail($post['email'], EMAIL_INFO, $title, $content); */
                        
                        $authenticate = new defined_Authenticate();                     
                        
                       
                        //
                        $this->_helper->viewRenderer->setNoRender();
                        
                        //$this->view->CALL_SCRIPT = 'alert ("'.$arrAlert['success'].'");' . "\n";
                        
                        echo $this->view->render('register/content_success.phtml');
						if($authenticate->login($post['email'], $post['password'])===true){      
                            $this->auth = $authenticate->getIdentity();
                            $this->view->CALL_SCRIPT = 'alert ("'.$arrAlert['success'].'");window.location="/user/post/";' . "\n";
                            //$this->_redirect('user/post/');                        
                        }
                        
                    }
                }
                
                
                
            }else {
                $this->view->CALL_SCRIPT = 'alert ("'.$arrAlert[$valid].'");' . "\n";
            }

            
            $this->view->FNAME=$post['first_name'];
	    	$this->view->LNAME=$post['last_name'];
            $this->view->SEX = $post['sex'];    	
	    	$this->view->ADDRESS=$post['address'];
            $this->view->BIRTHDATE=date('d-m-Y', strtotime($post['birthdate']));
	    	$this->view->CITY = $post['city_id'];
	    	$this->view->MOBILE=$post['mobile'];
	    	$this->view->PHONE=$post['phone'];
	    	$this->view->EMAIL=$post['email'];
        } else {
            // Default sex = 1 = Male; 0 = Female
            $this->view->SEX = 1;
        }
        //$this->view->CHECKFORM = Common::check_input('first_name,last_name,birthdate,address,city,mobile,phone,email,confirm_email,password,confirm_password','new_user');// Check input
    }

}